/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package pe.emp.solbrillante.sales.dao;

import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import pe.emp.solbrillante.sales.bean.Proveedor;

/**
 *
 * @author TacbaranNew
 */
public class MySQLProveedorDAO implements ProveedorDAO  {
    
    
     //coneccion ala base de datos
      String connectionUrl = "jdbc:mysql://localhost/prueba_entidadr?" +
                                   "user=adminsamaydev&password=123456";
      
    public ArrayList<Proveedor> queryAll(){
            ArrayList <Proveedor> proveedorList = new ArrayList<Proveedor>();
            Connection conn = null;
            PreparedStatement pstmt = null;
            ResultSet rs = null;            
            String calling;
            
            try {
            //1. Se registra el driver de la BD
            Driver myDriver = new com.mysql.jdbc.Driver();
            //2. Se abre la conexión

            conn = DriverManager.getConnection(connectionUrl);
            
            //3. Se ejecuta la sentencia SQL
            calling = "{call prueba_entidadr.get_proveedores()}";
            pstmt = conn.prepareStatement(calling);
            //pstmt = conn.prepareStatement("SELECT idproveedor, RUC , nombre , credito_otorgado  FROM PROVEEDOR ");
            
            rs =  pstmt.executeQuery();
            
            //4. Se evalúan los resultados
            while (rs.next()){
                int id = rs.getInt("idproveedor");
                String ruc = rs.getString("RUC");
                String nombre = rs.getString("nombre");
                String cedrito_otorgado = rs.getString("credito_otorgado");
                
                
                
                Proveedor proveedor= new Proveedor();
                
                proveedor.setId(id);
                proveedor.setRuc(ruc);
                proveedor.setNombre(nombre);
                proveedor.setCredito( cedrito_otorgado );


                proveedorList.add(proveedor);
            }            
        } catch (Exception ex) {
            ex.printStackTrace();
        } finally {
             //5. Se cierra la conexión
             try {if (rs != null) rs.close(); } 
             catch(Exception e){e.printStackTrace();}  
        } 

            return proveedorList;

    }
    
    
    public int insert(Proveedor p){
    
        
         throw new UnsupportedOperationException("Not supported yet.");
    }
    
    public int update(Proveedor p){
        throw new UnsupportedOperationException("Not supported yet."); 
    }
    
    public int delete(int idProveedor){
        throw new UnsupportedOperationException("Not supported yet.");
    }  
    
    public ArrayList<Proveedor> queryLikeName(String name){
    
         throw new UnsupportedOperationException("Not supported yet.");
    }
}
